import { hash, compare } from 'bcryptjs'

// 盐长度
const saltLength = 10

/**
 * 验证密码
 * @param password 密码
 * @param hash 密码哈希
 */
export const verify = (password: string, hash: string) => compare(password, hash)

/**
 * 加密密码
 * @param password 密码
 */
export const encrypt = (password: string) => hash(password, saltLength)

/**
 * 匹配加密的密码 hash 的正则
 */
export const matchPasswordHashRegExp = /^\$\w+\$\d+\$.{53}$/
